Formalizing UML State Machine Semantics for Automatic Verification–the PAT Approach
نویسندگان
چکیده
UML state machine is widely used in modeling the dynamic behavior of object-oriented designs in industry. But UML state machine specification, which is maintained by Object Management Group(OMG), is documented in natural language instead of formal language. The inherited ambiguity of natural language may introduce inconsistencies to the resulting state machine model. Formalizing UML state machine specification will solve the ambiguity problem and provide a uniformed view to software designers and developers. It also provides a foundation for automatic verification of UML state machine models, which can help to find software design vulnerabilities at an early stage and reduce the development cost. In this report, we are going to provide a thorough survey of existing work related to formalizing UML state machine semantics and automatic validation of UML state machine model dynamic behavior. We also discuss the shortcomings of existing approaches and propose our own solution for this problem.
منابع مشابه
A Formal Semantics for the Complete Syntax of UML State Machines with Communications (Report)
UML is a widely used notation introduced by the Object Management Group (OMG), and formalizing its semantics is an important issue. In this work, we concentrate on formalizing UML state machines which are used to express the dynamic behavior of software systems. We propose a formal operational semantics covering all features of the latest version (2.4.1) of UML state machine specification. We u...
متن کاملA Formal Semantics for Complete UML State Machines with Communications
UML is a widely used notation, and formalizing its semantics is an important issue. Here, we concentrate on formalizing UML state machines, used to express the dynamic behaviour of software systems. We propose a formal operational semantics covering all features of the latest version (2.4.1) of UML state machines specification. We use labelled transition systems as the semantic model, so as to ...
متن کاملInteractive Verification of UML State Machines
We propose a new technique for interactive formal verification of temporal properties of UML state machines. We introduce a formal, operational semantics of UML state machines and give an overview of the proof method which is based on symbolic execution with induction. Usefulness of the approach is demonstrated by example of an automatic teller machine. The approach is implemented in the KIV sy...
متن کاملOn formalizing UML and OCL features and their employment to runtime verification
Model-driven development (MDD) has been identified as a promising approach for developing software. By using abstract models of a system and by generating parts of the system out of these models, one tries to improve the efficiency of the overall development process and the quality of the resulting software. In the context of MDD the Unified Modeling Language (UML) and its related textual Objec...
متن کاملModel Checking UML Statechart Diagrams Using JACK
Statechart Diagrams provide a graphical notation for describing dynamic aspects of system behaviour within the Unified Modeling Language (UML). In this paper we present a branching time model-checking approach to the automatic verification of formal correctness of UML Statechart Diagrams specifications. We use a formal operational semantics for building a labeled transition system (automaton) w...
متن کامل